As we have removed is_client_decorated from Mutter in the last release.
Instead of re-adding it and re-exposing SSD/CSD differences and making
gnome-shell deal with that, we created a new API that does exactly what
is_client_decorated was used for, so switch to using that.
Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/7984
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3522>
(cherry picked from commit
d92f8daf62ab5a9d1c02f82701d74a9f87ae01ee)
if (!focusWindow)
return null;
- let windowRect = focusWindow.get_frame_rect();
- if (!focusWindow.is_client_decorated())
- windowRect = focusWindow.frame_rect_to_client_rect(windowRect);
-
+ const windowRect = focusWindow.get_client_content_rect();
const scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
const screenSpaceExtents = new Atspi.Rect({
x: windowRect.x + (scaleFactor * extents.x),